package core.molecules.atoms.subatomic;

import core.molecules.IMolecule;

public abstract class SubatomicParticle implements IMolecule {

	@Override
	public boolean isEmpty() {
		return false;
	}


	@Override
	public boolean equals(IMolecule m) {
		return this.getClass().isAssignableFrom(m.getClass());
	}


	@Override
	public void trimEmptyMolecules() {
		
	}

	@Override
	public int compareTo(IMolecule o) {
		return 1;
	}

	@Override
	public Integer getID() {
		return myID;
	}

	Integer myID;
	
	@Override
	public int getOxidationState() {
		return myCharge;
	}

	double myMass;
	int myCharge;
	
	public SubatomicParticle(double mass, int charge) {
		myMass = mass;
		myCharge = charge;
	}

	@Override
	public double getMass() {
		return myMass;
	}

	@Override
	public double getNumSubParticle() {
		return 0;
	}

}
